Mechanised Refinement of Procedures
نویسندگان
چکیده
Refine is a tool that supports the application of Morgan’s refinement calculus. It was designed to support teaching and use by beginners; it is already in use. We describe here the extension of Refine to support the development of (possibly recursive) procedures in the algebraic style of the refinement calculus already adopted by Refine. Resumo. Refine é uma ferramenta que suporta a aplicação do cálculo de refinamentos de Morgan. Ela foi projetada para apoiar ensino e uso por iniciantes, e já está em uso. Este artigo descreve a extensão de Refine para apoiar o desenvolvimento de procedimentos, possivelmente recursivos, no estilo algébrico do cálculo de refinamentos já adotado por Refine.
منابع مشابه
Cost-Based Analysis of Probabilistic Programs Mechanised in HOL
We provide a HOL formalisation for analysing expected time bounds for probabilistic programs. Our formalisation is based on the quantitative program logic of Morgan et al. [20] and McIver’s extension of it [16] to include performancestyle operators. In addition we provide some novel results based on probabilistic data refinement which we use to improve the utility of the basic method.
متن کاملReasoning Automatically about Termination and Refinement
We present very short mechanised proofs of Bachmair and Dershowitz’s termination theorem in different variants of Kleene algebras. Through our experiments we also discover three novel refinement laws for nested infinite loops. Finally, we introduce novel divergence modules in which full automation could be achieved. These structures seem very promising for automated reasoning about infinite beh...
متن کاملEncoding Circus Programs in ProofPowerZ
Circus combines elements from sequential and reactive programming, and is especially suited for the development and verification of state-rich, reactive systems. In this paper we illustrate, by example, how a mechanisation of the UTP, and of a Circus theory, more specifically, can be used to encode particular Circus specifications. This complements previous work which focused on using the mecha...
متن کاملFormal derivation of state-rich reactive programs using Circus
The lack of formalism in most software developments can lead to a loss of precision and correctness in the resulting software. Formal techniques of program development have been developed in the past decades and can tackle this problem. Two different approaches have been taken: one focuses on data aspects, and the other focuses on behavioural aspects of the systems. Some combined languages have...
متن کاملA Chain Datatype in Z
We present results about a general-purpose chain datatype specified in the Z notation and mechanised using the Z/Eves theorem prover. Our particular interest comes from its use in the specification and refinement of operating system kernels for embedded real-time devices as part of a pilot project within the international Grand Challenge in Verified Software, and to contribute to the Verified S...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Electr. Notes Theor. Comput. Sci.
دوره 184 شماره
صفحات -
تاریخ انتشار 2007